package com.scau402.system.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.scau402.common.annotation.Excel;
import com.scau402.common.core.domain.BaseEntity;
import lombok.EqualsAndHashCode;
import lombok.ToString;

import javax.validation.constraints.Max;
import javax.validation.constraints.Min;

/**
 * 加工厂对象 wms_basic_processor
 *
 * @author ruoyi
 * @date 2023-06-26
 */
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@TableName("wms_basic_processor")
public class WmsBasicProcessor extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 加工厂主键ID
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 加工厂编码
     */
    @Excel(name = "加工厂编码")
    @TableField("processor_code")
    private String processorCode;

    /**
     * 加工厂名称
     */
    @Excel(name = "加工厂名称")
    @TableField("processor_name")
    private String processorName;

    /**
     * 加工厂类型
     */
    @Excel(name = "加工厂类型")
    @TableField("processor_type")
    private String processorType;

    /**
     * 加工厂对接人姓名
     */
    @Excel(name = "加工厂对接人姓名")
    @TableField("contact_person_name")
    private String contactPersonName;

    /**
     * 加工厂对接人手机号码
     */
    @Excel(name = "加工厂对接人手机号码")
    @TableField("contact_person_phone")
    private String contactPersonPhone;

    /**
     * 加工周期
     */
    @Excel(name = "默认加工周期")
    @TableField("default_time")
    @Min(value = 0, message = "加工周期不能小于0")
    @Max(value = 60, message = "加工周期不能大于60")
    private Integer defaulttime;

    /**
     * 工费结算周期
     */
    @Excel(name = "工费结算周期")
    @TableField("processor_time")
    private String processortime;

    /**
     * 商定结算周期
     */
    @Excel(name = "商定结算周期")
    @TableField("settlement_cycle")
    @Min(value = 0, message = "商定结算周期不能小于0")
    private Integer settlementCycle;

    /**
     * 结算方式
     */
    @Excel(name = "结算方式")
    @TableField("lend_amount_limit")
    private String lendAmountLimit;

    /**
     * 收款人姓名
     */
    @Excel(name = "收款人姓名")
    @TableField("create_name")
    private String createname;

    /**
     * 收款人账号
     */
    @Excel(name = "收款人账号")
    @TableField("create_account")
    private String createaccount;

    /**
     * 收款人开户行
     */
    @Excel(name = "收款人开户行")
    @TableField("create_bank")
    private String createbank;

    /**
     * 状态（0启用 1停用）
     */
    @Excel(name = "状态", readConverterExp = "0=启用,1=停用")
    @TableField("status")
    private String status;

    /**
     * 删除标志（0代表存在 2代表删除）
     */
    @TableField("del_flag")
    private String delFlag;

    /**
     * 租户ID
     */
    @Excel(name = "租户ID")
    @TableField("tenant_id")
    private Long tenantId;

    /**
     * 部门ID
     */
    @Excel(name = "部门ID")
    @TableField("dept_id")
    private Long deptId;

}
